package com.example.rabc.factory;

import com.example.rabc.dao.UserDao;
import com.example.rabc.dao.RoleDao;
import com.example.rabc.dao.PermissionDao;
import com.example.rabc.dao.impl.PostgreSqlUserDao;
import com.example.rabc.dao.impl.PostgreSqlRoleDao;
import com.example.rabc.dao.impl.PostgreSqlPermissionDao;

/**
 * PostgreSQL具体工厂类
 * 实现创建具体产品的方法
 */
public class PostgreSqlDaoFactory implements DaoFactory {
    @Override
    public UserDao createUserDao() {
        return new PostgreSqlUserDao();
    }
    
    @Override
    public RoleDao createRoleDao() {
        return new PostgreSqlRoleDao();
    }
    
    @Override
    public PermissionDao createPermissionDao() {
        return new PostgreSqlPermissionDao();
    }
}